Method of creating texture capable of continuous mapping

ABSTRACT

A method of quickly creating a texture which shows a continuous pattern when mapped repeatedly is provided. A space having three-dimensional objects arranged therein is rendered into a two-dimensional plane, or a rendering area. The rendering area is virtually divided into a plurality of congruent areas. Corresponding pixels of the areas are overlapped with each other to obtain a desired texture. At the time of overlapping, Z values in Z buffers are compared to update color information and Z values of a target area so that the data on pixels closer to a viewpoint shows all the time.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The invention relates to a three-dimensional computer graphicstechnology, and more particularly to a method of creating a texture.

2. Description of the Related Art

In the field of computer graphics (CG) or three-dimensional graphics inparticular, a texture mapping technology is used to achieve graphicshaving higher resemblance to actual live images. In the texture mappingtechnology, images called textures, which imitate actual matters, arepasted onto the surfaces of objects rendered in simple polygons.

For example, when a game program with three-dimensional graphics displaypresents cave rocks or human skin, textures containing image data forimitating the physical texture of a rock or skin are mapped onto thesurfaces of polygons to generate photorealistic images. Moreover, toexpress pits and projections on the surfaces of objects, a techniquecalled bump mapping is also used. In this technique, matters are shownas if having uneven surfaces although the three-dimensional models haveflat surfaces.

When a certain pattern or asperities need to be repeated on a wide rangeof the surface of a matter, a unit texture is mapped repeatedly. Here,the boundaries of the unit texture may appear inappropriately noticeableunless the unit texture is created so as to show a continuous patternacross adjoining unit textures.

If a game uses textures that are to be mapped repeatedly to showcontinuous patterns, the textures may be created in advance at theprogramming stage. Nevertheless, the textures created previously have aprescribed viewpoint and prescribed positions of light sources alone,and thus are sometimes inappropriate to express desired physicaltextures. Besides, prepared textures have only a limited capability toexpress the surfaces of matters when the matters vary in color orroughness with time.

SUMMARY OF THE INVENTION

The present invention has been achieved in view of the foregoingproblems. It is thus an object of the present invention to provide amethod of quickly creating a texture which can be mapped repeatedly toshow a continuous pattern.

In a texture creation method according to one of the aspects of thepresent invention, one or more three-dimensional objects are arranged ina space, and rendered in a rendering area through hidden surfaceelimination processing with reference to Z values thereof indicatingdepths from a viewpoint. This rendering area is divided into a pluralityof mutually congruent areas, and the divided areas are merged into apredetermined target rendering area. At the time of merging the dividedareas into the target rendering area, pixel data and Z values areupdated based on a result of comparison between the Z values ofoverlapping pixels, whereby the divided areas are merged. The texturecreated thus shows a three-dimensional continuous pattern when mappedrepeatedly.

It is to be noted that any arbitrary combination or rearrangement of theabove-described structural components and so forth are all effective asand encompassed by the present embodiments.

Moreover, this summary of the invention does not necessarily describeall necessary features so that the invention may also be sub-combinationof these described features.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram showing a texture created by a texture creationmethod according to an embodiment;

FIG. 2 is a diagram showing a state where the texture shown in FIG. 1 ismapped onto a plane;

FIG. 3 is a flowchart showing a method of creating a wrap round texture;

FIG. 4 is a diagram showing a state where three-dimensional objects arearranged in a predetermined space;

FIG. 5 is a diagram showing image data obtained by rendering thethree-dimensional objects arranged in the space of FIG. 4 into arendering area;

FIG. 6 is a diagram schematically showing how the areas are merged eachother;

FIG. 7 is a diagram showing how a target area 20A is merged with areas20B to 20I;

FIG. 8 is a diagram for explaining a method of determining which areasto merge;

FIG. 9 is a diagram showing a state where texture data obtained by thetexture creation method according to the present embodiment is mapped intiles repeatedly; and

FIGS. 10A to 10D are diagrams showing modifications of the renderingarea and the resulting divided areas.

DETAILED DESCRIPTION OF THE INVENTION

The invention will now be described based on preferred embodiments whichdo not intend to limit the scope of the present invention but exemplifythe invention. All of the features and the combinations thereofdescribed in the embodiments are not necessarily essential to theinvention.

Before going into details of the embodiments, an overview thereof willbe given here.

One of the aspects of the present invention relates to a texturecreation method. This texture creation method includes the steps of:arranging one or more three-dimensional objects in a space, andrendering the three-dimensional objects in a rendering area throughhidden surface elimination processing with reference to Z values thereofindicating depths from a viewpoint; dividing the rendering area into aplurality of mutually congruent areas; and merging the divided areasinto a predetermined target rendering area. At the time of merging thedivided areas into the predetermined target rendering area, pixel dataand Z values are updated based on a result of comparison between the Zvalues of overlapping pixels, whereby the divided areas are merged intointended texture data.

According to this aspect, a texture capable of being pasted repeatedlycan be created efficiently at high speed.

Each of the three-dimensional objects is arranged in the space so thatit is included at least in part in the predetermined target renderingarea out of the divided areas.

Arranging three-dimensional objects under the foregoing conditionensures that all those arranged are objects to be rendered. This canreduce redundancy and allow still faster texture creation.

In advance of the step of merging the divided areas into the targetrendering area, the method may include the step of rendering abackground texture in the predetermined target rendering area by using aZ value farther from the viewpoint than the three-dimensional objects.

The background texture may be merely a pattern, a background color, oreven a wrap round texture or the like created in advance.

Another aspect of the present invention is a method of creating atexture having height information. In this method, the Z value of eachpixel of the texture created by the foregoing texture creation method isconverted into information on height from a predetermined referenceplane perpendicular to a view direction in the space where the pluralityof three-dimensional objects are arranged. The resultant may be storedas inherent height information.

According to this aspect of the exemplary embodiment, athree-dimensional texture having height information can be createdeasily by simply converting the Z values into height information. Such athree-dimensional texture having height information can be used as adisplacement map through arithmetic processing. This makes it possibleto express pits and projections on the surfaces of matters morerealistically. When the conversion from the Z values into heightinformation involves parallel projection or the like, thethree-dimensional texture having height information can be obtainedwithout any special processing since the Z values themselves indicatethe height information.

Still another aspect of the present invention is a normal vector maptexture creation method. In this normal vector map texture creationmethod, the direction of a normal vector to each pixel of the texturecreated by the foregoing texture creation method is calculated andstored based on the Z value or height information of the same.

According to this aspect, it is possible to create a normal vector maptexture which can be used as a bump map and is capable of continuousmapping repeatedly.

Still another aspect of the present invention is a unit sheet. This unitsheet has bounding sides, and is created so that corresponding pixels onopposite ones of the sides have the same Z values. When the unit sheetis arranged repeatedly, adjoining ones of the unit sheets thus coincidein the Z values on the boundary therebetween.

The “unit sheet” refers to, in tangible form, a single unit component ofsuch a matter as wallpaper to be put on a wall, and a mat or tiling topave a floor. In intangible form, the “unit sheet” refers to electronicdata on a mold or a printing pattern that is necessary incomputer-designing the foregoing wallpaper, tiling, or the like for thesake of actual fabrication, or a graphic pattern or the like that isused by a computer program. In other words, the unit sheet may becreated virtually on a computer.

When the unit sheet is tangible, the Z values refer to depth informationin the state of the electronic data on a computer before the unit sheetis formed as a tangible form.

The data of such a unit sheet can be created electronically by theforegoing texture creation method.

Incidentally, any combinations of the foregoing components, and thecomponents and expressions of the present invention replaced withmethods, apparatuses, systems, and the like mutually are also intendedto constitute applicable aspects of the present invention.

Hereinafter, an embodiment of the present invention will be described indetail with reference to the drawings.

FIG. 1 shows a texture 20 to be created by the texture creation methodaccording to the present embodiment. This texture has data whichincludes both color information for indicating RGB (Red, Green, andBlue) luminances and a Z value for indicating the depth from a viewpointpixel by pixel.

FIG. 2 shows a state where the texture 20 shown in FIG. 1 is tiled on aplane. As shown in FIG. 2, a continuous pattern appears across thetexture boundaries. Hereinafter, a texture that shows a continuouspattern when thus mapped repeatedly will be referred to as a wrap roundtexture. Description will now be given of the method for creating thiswrap round texture at high speed.

FIG. 3 shows a flowchart of the method of creating a wrap round texture.

Initially, three-dimensional objects appropriate to express the physicaltexture of a matter, of which texture rendering is desired, are arranged(S100). For example, suppose the case of expressing pits and projectionsof rocks. Such three-dimensional objects as a cylinder and a spheroid,or previously-created objects or the like for representing some of thepits and projections of the rocks, are arranged and modeled in apredetermined space 100.

This texture may be a simple three-dimensional geometric pattern. Inthis case, three-dimensional objects for constituting a desiredgeometric pattern may be arranged. FIG. 4 shows a state wherethree-dimensional objects are arranged in the predetermined space 100.The objects arranged in the space include a cylindrical object 50 and apyramidal object 60.

Next, rendering parameters such as a camera position, or the position ofthe viewpoint, a view direction, and a view volume are determined(S200).

Next, the three-dimensional objects are rendered in the rendering areawith reference to information on a depth from the viewpoint by using aZ-buffer method or the like, for example (S300). The coordinate axis Zshown to the top in FIG. 4 indicates the view direction of the camera.The higher the Z coordinate is, the farther the distance from theviewpoint is. As employed herein, the “rendering area” refers to amemory area which is typically regarded as a frame buffer and a Zbuffer. The phase “to render in the rendering area” means that theresult of image processing is stored into the memory area, not displayedon an actual display screen.

When the three-dimensional objects are rendered in the rendering areawith reference to the information on the depth from the viewpoint byusing the Z-buffer method or the like, the distance from a planeincluding the viewpoint may be used as the Z value for indicating thedepth from the viewpoint if the hidden surface elimination processing isperformed based on parallel projection. If perspective projection isintended, either of the distance from the viewpoint and the distancefrom the plane including the viewpoint may be used as the Z value. Inthe texture creation method according to the present embodiment, a wrapround texture can be created regardless of which distance is used as theZ value.

Incidentally, with perspective projection, the viewpoint may varybetween when rendered and when used. This can cause some distortion inthe peripheral areas of the texture, whereas the created texture issufficiently practical unless the viewing angle is too large or theintended shapes are too strict.

In the present embodiment, the color information on each individualpixel, or the RGB values, is written to the frame buffer. Theinformation on the depth from the viewpoint, or the Z value, is writtento the Z buffer. That is, rendering a three-dimensional object in therendering area may be considered synonymous with performing viewconversion and hidden surface (hidden line) elimination processing toconvert the virtual three-dimensional model into a two-dimensionalimage.

FIG. 5 shows image data obtained by rendering the three-dimensionalobjects arranged in the space of FIG. 4 into the rendering area 200.This rendering area 200 is divided by the broken lines into a 3×3 matrixof congruent areas 20A to 20I (S400). Among these congruent areas, thearea 20A arranged at the center is assumed as a target area. Therendering data rendered in the areas 20B to 20I is then merged into thistarget area 20A successively (S500). Since the merged data written inthis target area 20A is the final texture data, the size of the dividedareas corresponds to the size of the intended texture. Conversely, suchfactors as the size of the space for the three-dimensional objects to bearranged in and the position of the viewpoint are determined by thedesired size of the texture.

As a result of division of the rendering area 200, the cylindricalobject 50 of FIG. 4 is rendered across the target area 20A and the area20F. The pyramidal object 60 is rendered across the target area 20A andthe area 20B.

Next, description will be given of the merge of the areas. FIG. 6schematically shows how the areas are merged with each other. The areas20A to 20I are congruent, each consisting of M rows and N columns ofpixels. In each of the areas, the pixel in the ith row and jth columnshall have the following pieces of pixel data: color data consisting ofRGB values, denoted as Cij; and a Z value for indicating the depthinformation, denoted as Zij. Moreover, for the sake of area-to-areadistinction in the pixel data, the color information Cij of the area 20Ashall be denoted as Cij(A) and that of the area 20B as Cij(B), forexample.

The merger of the areas is achieved by comparing to update the pixeldata between the corresponding pixels, or ones having the same values ofi and j, in different areas under the following condition.

When an area 20α and an area 20β are merged into a new area 20γ, the Zvalues of the respective pixels in the ith row and jth column arecompared with each other by referring to the Z buffers of the respectiveareas. If the result of comparison shows that Zij(α)>Zij(β), it meansthat the pixel data rendered in the area 20β is part of an object thatlies closer to the viewpoint. For the merged new area 20γ, the colorinformation Cij(γ) in the ith row and the jth column is thus updatedwith Cij(β), and Zij(γ) with Zij(β). On the other hand, ifZij(α)<Zij(β), it means that the pixel data rendered in the area 20α ispart of an object that lies closer to the viewpoint. For the merged newarea 20γ, the color information Cij(γ) in the ith row and the jth columnis thus updated with Cij(α), and Zij(γ) with Zij(α).

This processing is performed on each of the pixels from the 1st row and1st column to the Mth row and Nth column, thereby completing the mergerof the areas 20α and 20β. In the area 20γ obtained thus, objects closerto the viewpoint, or objects having smaller Z values, are overwritten inorder.

The foregoing merging method will be described with reference to thedrawings. FIG. 7 shows how the target area 20A is merged with the areas20B to 20I.

In the area-to-area merger according to the present embodiment, thetarget area 20A and the area 20B are initially merged into new data, ora new target area 20A′. The new target area 20A′ obtained thus and thearea 20C are merged into a target area 20A″. In this way, the areas 20Bto 20I are successively merged with the target area 20A obtained inturn, whereby all the areas can be merged. Here, the areas need notnecessarily be merged into the target area in succession. An additionalmemory area may be provided so that merged data is stored into this areato create the intended texture data.

The cylindrical object 50 is rendered as an object 50 a in the targetarea. The pyramidal object 60 is rendered as an object 60 a in thetarget area, and as an object 60 b in the area 20B. The cylindricalobject 50 has a height greater than that of the pyramidal object 60, andthus is closer to the viewpoint. Consequently, the pixels of the object50 a rendered in the target area 20A have Z values higher than those ofthe pixels of the object 60 b rendered in the area 20B. As a result ofmerging the target area 20A with the area 20B, the pixel data of theobject 50 a remains where the pixels of the objects 50 a and 60 boverlap. In this way, the Z values of all the pixels are compared toupdate the pixel data, whereby the new target area shown as 20A′ in FIG.7 is obtained.

The target area 20A′ obtained thus and the other areas 20C to 20I arethen merged in succession. Eventually, the texture data 20 into whichall the areas are merged is created in the target area 20A.

Incidentally, during this merger, areas having no three-dimensionalobject need not be subjected to the merging processing. For example,among the areas shown in FIG. 4, the areas 20I, 20C, and 20E have noobject. These areas may be omitted from the merging processing.Conversely, since the no-object pixels have higher Z values or arefarther from the viewpoint, they can also be merged without anyparticular problem.

Moreover, the areas may be merged in any order since the order ofmerging process has no effect on the texture data to be created. Thatis, the concept of the target area is used for the sake of convenience.In some cases, any one of the areas 20A to 20I may be defined as thetarget area.

The area merging process may also be performed in the following manner.FIG. 8 shows image data obtained by rendering three-dimensional objectsarranged in a space into the rendering area 200. Initially, a targetarea 20A having the size of the intended texture is defined in thisrendering area 200.

Next, the periphery around this target area 20A is divided into areas20B to 20L. Of these areas 20B to 20L, the areas 20B, 20C, 20D, 20F,20G, and 20H must be merged since they contain objects that are includedin the target area 20A. The areas 20I, 20K, and 20L have no object andthus need not be merged. The area 20L has no object that is included inthe target area 20A but an object 70 that is included in this areaalone. Such areas need not be merged, either.

Now, the area 20J will be examined. The area 20J shares an object 80with the area 20C. Since the area 20C is one of the areas to be merged,the object 80 will be discontinuous and fail to wrap around if the area20J is not merged. Consequently, this area 20J must also be merged.

In summary, whether or not to merge is initially determined of the areasadjoining around the target area 20A. Then, among the areas that adjointhe areas to be merged, ones that share any object with the areasdetermined to be merged so far are also determined to be merged. Asabove, the areas to be merged are determined in succession, and whetheror not to merge the areas adjoining those areas are then determined inorder. All the necessary areas can thus be merged to create a wrap roundtexture.

Among the bounding sides of the texture created as described above,mutually opposite sides have pixels of the same Z values. Thus, when thetexture is arranged repeatedly, adjoining ones of the textures coincidein the Z values on the boundary therebetween. FIG. 9 shows the statewhere the texture data 20 obtained by the texture creation methodaccording to the present embodiment is mapped in tiles repeatedly. FromFIG. 9, it can be seen that the texture data 20 constitutes a wrap roundtexture for showing a continuous pattern repeatedly. According to theforegoing method, such a texture can be created at high speed througharithmetic processing in accordance with the procedure shown in FIG. 3.In a game program and the like, it is therefore possible to createvarious textures while changing the position of the viewpoint in realtime.

For example, even in situations where prepared textures are notavailable, such as when a username is entered and used for a texture ina game, it is possible to create a texture capable of wrap-round by theforegoing method. The advantage of real-time texture creation can alsobe enjoyed when combinations of positions, directions, sizes, lightingmodes, objects to be rendered, and the like are so many that it isimpractical to prepare textures for all the possible combination.

The real-time texture creation is also required if user-designedtextures are used in a game. The texture creation method according tothe present embodiment may also be used in such cases.

Moreover, a texture created by moving objects arranged in the space inreal time can be used as a moving wrap round texture. This technique canbe used, for example, to express clouds hanging in the sky inthree-dimensional graphics animation.

Such a wrap round texture may be mapped in tiles on a two-dimensionalplane, for example. In this case, only the color information consistingof the RGB values will be referred to out of the texture data.

This wrap round texture can also be mapped to the surface of athree-dimensional object by referring to the RGB values alone. Forexample, the texture can be mapped all around a three-dimensional objectto show a seamless, continuous pattern.

Furthermore, this wrap round texture can be used not only as atwo-dimensional plane texture as described above, but also as athree-dimensional texture having Z values or depth information. Morespecifically, in the process of creating the texture, the depthinformation Zij(A) of the target area resulting from the area mergingmay be stored along with the color information Cij(A). This depthinformation is then converted into information on height from a planefor the texture to be pasted to. This makes it possible to paste thetexture to the surface of such a matter as a polygon inthree-dimensional computer graphics and use the height information ofthe texture for various expressions. Such texture data can be used as aseamless, continuous displacement map.

Moreover, a normal vector buffer for storing normal vector data pixel bypixel may be provided instead of the frame buffer, or in addition to theframe buffer, so that a normal vector map is generated in the process ofcreating a texture. More specifically, three-dimensional objects arerendered in the rendering area 200, and the rendering area is dividedand then merged into a target area. Based on the depth informationZij(A) of the target area, the directions of the normal vectors to therespective pixels in the target area are calculated. The resultants arethen written to the normal vector buffer to obtain a normal vectortexture. Incidentally, the directions of the normal vectors can becalculated by algorithms well known to and techniques commonly used bythose skilled in the art. Description thereof will thus be omitted here.

By using the foregoing method, it is possible to create a wrap-roundnormal vector map texture which provides normal vectors of continuousdirections across boundaries when mapped continuously. Such a texturehaving normal vector data makes it possible to render a seamlesscontinuous bump map, which can extend the range of three-dimensionalgraphics expression. Since this normal vector map texture can also becreated in real time at high speed, the bump map can be changed withtime to present such expression that pits and projections on the surfaceof a matter displayed onscreen vary with time.

While the texture created as described above is a virtual creation on acomputer, a unit sheet of actual wallpaper, tiling, and the like createdfrom the texture are also applicable as an embodiment of the presentinvention.

For example, to create a flat sheet having no asperity, the electricdata on the texture created by the foregoing method can be printed on asheet material to form a unit sheet which can be actually pastedrepeatedly.

For three-dimensional unit sheets, a piece of wallpaper or tiling havingan uneven surface is feasible. Take, for example, the case of forming aunit sheet of tiling having a floral pattern, or an embossed floralpattern. Here, a mold can be formed by using CAD based on the electricdata on a three-dimensional texture created by the foregoing method, sothat identical tiles are formed with the mold.

The foregoing embodiments have been given solely by way of illustration.It will be understood by those skilled in the art that variousmodifications may be made to combinations of the foregoing componentsand processes, and all such modifications are also intended to fallwithin the scope of the present invention.

The foregoing description has dealt with the cases where the renderingarea 200 is square or rectangular in shape, and the divided target areaor the final texture data is of square or rectangular shape as well.Nevertheless, the shapes of the areas are subject to a number ofvariations.

FIGS. 10A to 10D show some variations of the rendering area 200 and thedivided areas. As in FIG. 10A, the rendering area 200 may be shaped as aparallelogram instead of the square or rectangle. In this case, thecongruent areas 20A to 20I are also parallelograms.

In FIG. 10B, a regular hexagonal rendering area 200 is divided intocongruent, regular hexagonal areas 20A to 20G. The regular hexagonaltexture provides the effect of making border areas less visible whenmapped in tiles.

In FIG. 10C, a sector-shaped rendering area 200 having a center angle ofθ is divided into three congruent sectors having a center angle of θ′.With the area 20A as the target area, the areas 20A to 20C can be mergedto create a wrap round texture which shows a continuous pattern whenpasted to a circle on a plane. The sector-shaped texture can also bemapped onto the side of a cone. In this case, the center angle of thesector of the rendering area is adjusted in accordance with the shape ofthe cone to be mapped.

In FIG. 10D, a rendering area 200 which is obtained by cutting off asector of r in radius from a sector of R in radius is divided intocongruent shapes. In this case, the texture can be mapped onto the sideof a truncated cone continuously. Again, in the rendering area of FIG.10D, the center angles θ and θ′ and the radii R and r are adjusted inaccordance with the shape of the truncated cone to be mapped.

While the objects rendered in the rendering area 200 of FIG. 5 arearranged so as to lie across two areas each, larger objects may bearranged across three or more areas. Even in this case, a wrap roundtexture can be created by merging all the areas.

The rendering area may be divided vertically or horizontally, in onedirection alone. In this case, the wrap round texture created shows acontinuous pattern occurring in the divided direction.

Objects that are included only in areas other than the target area 20Acontribute to an unnecessarily broader rendering area since they aremerged and overwritten to the target area 20A eventually. For example,if there is a sphere that is included only in the area 20I of FIG. 4,the sphere should have been disposed to the corresponding position inthe target area 20A in the first place. In other words, the processingis redundant. For the sake of simpler processing, three-dimensionalobjects may be arranged so that each individual object is alwaysincluded in the target area 20A at least in part.

Before three-dimensional objects are arranged and rendered into therendering area 200, the frame buffer may be filled with a desiredbackground color along with a Z value for infinite distance. A texturecreated in advance may also used as the background.

1. A texture creation method comprising: arranging one or morethree-dimensional objects in a space, and rendering thethree-dimensional objects in a rendering area through hidden surfaceelimination processing with reference to Z values thereof indicatingdepths from a viewpoint; dividing the rendering area into a plurality ofmutually congruent areas; and merging the divided areas into apredetermined target rendering area, wherein at the time of merging thedivided areas into the predetermined target rendering area, pixel dataand Z values are updated based on a result of comparison between the Zvalues of overlapping pixels, whereby the divided areas are merged intointended texture data.
 2. The texture creation method according to claim1, wherein each of the three-dimensional objects is arranged in thespace so that it is included at least in part in the predeterminedtarget rendering area out of the divided areas.
 3. The texture creationmethod according to claim 1, further comprising rendering a backgroundtexture in the predetermined target rendering area by using a Z valuefarther from the viewpoint than the three-dimensional objects, inadvance of merging the divided areas into the target rendering area. 4.The texture creation method according to claim 1, further comprisingconverting the Z value of each pixel of the intended texture data intoinformation on height from a predetermined reference plane perpendicularto a view direction in the space where the three-dimensional objects arearranged, and storing the resultant as inherent height information. 5.The texture creation method according to claim 1, further comprisingcalculating a direction of a normal vector with respect to each pixel ofthe intended texture data, and storing the resultant as normal vectordata.
 6. A unit sheet having bounding sides, wherein correspondingpixels on opposite ones of the sides have the same Z values indicatingdepths from a viewpoint so that when the unit sheet is arrangedrepeatedly, adjoining ones of the unit sheets coincide in the Z valueson the boundary therebetween.
 7. The unit sheet according to claim 6,being virtually created on a computer.
 8. A computer-readable mediumcontaining a set of instructions for a general purpose computer, the setof instructions comprising: arranging at least one three-dimensionalobject in a predetermined space; determining at least one renderingparameter; rendering the at least one three-dimensional object in arendering area based on the at least one rendering parameter; dividingthe rendering area into a plurality of mutually congruent areas; andsynthesizing the plurality of mutually congruent areas based on the atleast one three-dimensional object and the at least one renderingparameter.